【レポート】パナソニックのIoT家電を支えるクラウド基盤の進化~AWS・DevOps技術適用で構築スピード倍増~ #AWSSummit
サーバーレス開発部@大阪の岩田です 2019年06月27日に開催された AWS Summit Osaka 2019 のセッション「パナソニックのIoT家電を支えるクラウド基盤の進化~AWS・DevOps技術適用で構築スピード倍増~」をレポートします。
スピーカー(敬称略)
パナソニック株式会社 アプライアンス社 技術本部 デジタルトランスフォーメーション開発センター クラウド・App基盤開発部 部長 大穂 雅博
パナソニック株式会社 アプライアンス社 技術本部 デジタルトランスフォーメーション開発センター クラウド・App基盤開発部 主任技師 箱田 航太郎
セッション概要
当社は2012年にパナソニックスマート家電と称し、当社家電群をインターネットと繋ぐIoTの取組を開始。昨今はよりお客様のくらしを便利にする家電への進化を進めています。2017年からはクラウドファースト・マイクロサービス思想で、当社家電に必要な共通機能群のプラットフォーム化を図り、IoT家電の開発・運用スピードアップと合理化を実現してきました。本発表では、AWSやDevOpsなど最新クラウド技術を適用するまでの歩みをご紹介します。
レポート
セッション前半:パナソニック家電のIoT化への取り組み
パナソニックの変わらぬ想い
一人ひとりのくらしに寄り添い、家電により人々のくらしをほんの少しでも良くしたい
家電の変革
洗濯機の例
- 単機能 (家電) → 多機能化(マイコン家電) → 知能化(スマート家電) → IoT家電
- IoT家電登場までは実際の使用状況、要望を把握できなかった
- 一人一人に向けたカスタマイズ等もできなかった
- IoT家電が登場
- 常時WifiでNW接続
- 顧客に状況に応じた対応が可能に
- IoT家電の例
- スマホから洗濯機の遠隔操作
- 液体洗剤、柔軟剤の自動計量
- 外出先からの洗濯機の操作
- 帰宅の時間に合わせて最高の状態で衣類を提供
- 発売後に出てきた新しい洗剤、柔軟剤のデータもクラウド側でUPDATE
エアコンの例
- PM2.5/花粉状況の取得
- パナソニック作のAIエオリアAIを使って自動で空気清浄を行う
- エオリアAIは日々の学習により、日々賢くなる
IoT家電を連打することで顧客価値を提供する
パナソニックのビジョン
- 暮らしアップデート
- 使えば使うほど理想の暮らしに近づくこと
- 一人一人の多様性、個別要求に応える機能、体験、サービスの提供が重要
- あえての未完成品
道のりは険しかった・・・
- 2012年 スマート家電開始 スマホ連携開始
- 市場導入までは良かった。が、サービス利用者が年々低迷
- 進化し続けることができなかった
考え方を変えた
- スマート家電からIoT家電に変わる際、アーキテクチャをマイクロサービスに
- コンウェイの法則
- システムを設計する組織は、その構造をそっくり真似た構造の設計を生み出してしまう
- 組織視点は非効率が多い
- 開発の効率化だけでは運用の高速化に繋がらない
- 全体的;パブリッククラウドを徹底的に使いこなす!
- 局所的;DevIps視点での開発と運用の効率化
前半の結論
IoTは継続進化しなければならない!!
セッション後半:クラウドファースト、マイクロサービス、DevOpsで構築スピード倍増
- IoTを支えるクラウド基盤の高速な進化をリードする
- 常に進化し続けるには何が必要か?
取り組み1 クラウドファースト
- オンプレ時代
- 限りある資源への詰め込み
- 負荷が予測できずリソースが余り過ぎる問題
- スピード感なし
- グローバルでの調達困難性
目指すべき姿は何か?
オンプレ脱却
- 利用の変動に振り回されず、必要に応じてグローバルに調達
- 完璧な形は存在しないという前提に立ち、日々監視と改善
そう簡単な話ではない、。。
苦労した点
- 塩漬け5年のレガシー環境(OS、ミドルウェアの保守切れ))
- オンプレ中心の社内規定
- データ移行
- AWSノウハウ、クラウド人材が不足
- 家電メーカー = ソフトウェア人材の9割以上が組み込み系
いろんな人に助けてもらった
積極的な外部連携
組み込み時代は、、、
- 職人芸に頼ってた
- 学び方を改め、使えるものは活用して自らを進化させる
- AWSプロフェッショナルサービスとのWorkshop利用
効果
インフラ費用の75%削減!
取り組み2 マイクロサービスアーキテクチャ
- オンプレ時代
- モノリシックなアーキテクチャ
- 事業サービス間で共有
- デプロイが全家電に影響
- 全家電事業側との調整が必要
- 責任、影響範囲が大きすぎる
- 運用作業が多すぎる、遅すぎる
各サービスが独立して運用が行えること、責任範囲を明確化することを目指した
- 進化を支えるためにマストな条件
- 責任分界(マイクロサービス)アーキテクチャ
- サービス層
- 共通層
- 家電機器
- メリット
- 独立したスケーラビリティの確保
- サービス単位でリリースが可能
- 製品サービス単位で改善、運用効率康王が狙える組織へと繋げられる
取り組み3 高速リリースと属人化解消
DevOpsの導入
- オンプレ時代
- メンテを全て手作業で実施
- 遅い
- ミス誘発
- メンテを全て手作業で実施
- 移行の考え方
- あらゆる定形作業の自動化を考える
- Jenkinsを導入
- コンテナを使う
- マネージドサービスを使い倒す
- 誰でもミスなく一定水準で運用作業が行えることを目指した
- 開発パイプライン
- ソースをチェックアウトしてコンテナを作成、ECRにプッシュ
- 運用パイプライン
- 開発パイプラインで作成されたコンテナを使って大量の検証環境にデプロイ
- 環境ごとに異なるパラメータは環境変数やS3を活用
- Pre本番、本番環境
- Blue-Greenデプロイを採用
- 失敗も自動的に検出して復旧できることが重要
- 手作業を可能な限り排除する
- 接続文字列等の機密情報は限定された作業者からのみアクセス可能な場所に保存
- あらゆる定形作業の自動化を考える
- デプロイ作業時間を91%削減
- 22h -> 2h
- 手順書の修正が不要に
- DockerとJenkinsで手順を標準化(IaC)
- 属人化も解消
- 22h -> 2h
- モノリシックなアーキテクチャからマイクロサービスアーキテクチャ+自動化プロセス(CI/CD))へ
- パフォーマンスが良い、常に進化するサービス・組織へとスタートできた
- 真のIoT化は始まったばかり グロバールに軽く、早くサービスを連打し続け、暮らしのアップデートを
さいごに
パナソニックさんのような巨大企業がクラウドファーストな環境に移行することは、非常に難易度の高い取り組みだったと想像します。 クラウドのメリットを最大限に活かしつつ改善を繰り返すパナソニックさんのIoT家電。今後も要注目です!!